package gen

import "gitee.com/dreamwood/ez-go/maker"

func ItemBase() {
	doc := maker.CreateDoc("ItemBase", "物品", "wms")
	doc.Add("name", "名称").IsString()
	doc.Add("category", "分类").IsJoinM2O("ItemCategory")
	doc.Add("unit", "单位").IsJoinM2O("Unit")
	doc.Add("attributes", "属性").IsJoinO2M("ItemAttribute")
	doc.Add("skus", "SKU").IsJoinO2M("ItemSku")
	doc.Add("version", "版本").IsInt()

	doc.Generate()
}
func ItemSku() {
	doc := maker.CreateDoc("ItemSku", "物品SKU", "wms")
	doc.Add("itemBase", "物品").IsJoinM2O("ItemBase")
	doc.Add("text", "物品SKU描述").IsString()
	doc.Add("code", "物品SKU编码").IsString()
	doc.Add("unit", "单位").IsJoinM2O("Unit")
	doc.Add("unitBase", "基本单位基数").IsFloat()
	doc.Add("unitExchange", "单位转换量").IsFloat()
	doc.Add("version", "版本").IsInt()
	doc.Add("isOn", "是否使用").IsBool()

	doc.Generate()
}

func ItemCategory() {
	doc := maker.CreateDoc("ItemCategory", "物品分类", "wms")
	doc.Add("name", "名称").IsString()
	doc.Add("code", "编码").IsString()
	doc.Add("note", "范围说明").IsString()
	doc.LoadTree()
	doc.Generate()
}

func AttributeKey() {
	doc := maker.CreateDoc("AttributeKey", "属性键", "wms")
	doc.Add("name", "名称").IsString()
	doc.Add("code", "编码").IsString()
	doc.Add("note", "说明").IsString()
	doc.Add("values", "值").IsJoinO2M("AttributeValue")
	doc.Generate()
}

func AttributeValue() {
	doc := maker.CreateDoc("AttributeValue", "属性值", "wms")
	doc.Add("k", "键").IsJoinM2O("AttributeKey")
	doc.Add("itemBase", "物品").IsJoinM2O("ItemBase")
	doc.Add("name", "名称").IsString()
	doc.Add("sort", "排序").IsInt()
	doc.Add("code", "编码").IsString()
	doc.Add("note", "说明").IsString()
	doc.Add("isOn", "是否使用").IsBool()
	doc.Generate()
}

func ItemAttribute() {
	doc := maker.CreateDoc("ItemAttribute", "物品属性", "wms")
	doc.Add("itemBase", "物品").IsJoinM2O("ItemBase")
	doc.Add("attribute", "属性").IsJoinM2O("AttributeKey")
	doc.Add("name", "属性名称").IsString()
	doc.Add("values", "属性值").IsString()
	doc.Add("code", "编码").IsString()
	doc.Add("sort", "排序").IsInt()
	doc.Generate()
}

func Unit() {
	doc := maker.CreateDoc("Unit", "计量单位", "wms")
	doc.Add("name", "名称").IsString()
	doc.Add("code", "字母单位").IsString()
	doc.Add("sort", "排序").IsInt()
	doc.Generate()
}
